package com.fjec.devops.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fjec.devops.entity.InfoMarket;

import java.util.Map;

public interface MarketService {
    Map<String, Object> listMarkets(Page page);

    void saveOrUpdate(InfoMarket infoMarket, String markPic, Long markPicId, String markMapPic, Long markMapPicId);

    Map<String, Object> getByCode(int markCode);

    Map<String, Object> getDepoInfoByConditions(Integer searchBy, String title, Integer busiType, Integer markCode, Integer depoStatus, Integer timedBy, String startTime, String endTime, Page page);

    Map<String, Object> getBusinessesOfAllTypesByConditions(Integer searchBy, String title, Integer busiType, Integer markCode, String startTime, String endTime, Page page);

    Map<String, Object> getOrdersByConditions(Integer searchBy, String title, Integer busiType, Integer markCode, Integer orderType, Integer orderStatus, String startTime, String endTime, Page page);

    Map<String, Object> getOrdersByBusiId(Long busiId, Long page, Long limit);

    Map<String, Object> getOrderDetailById(Long id);

    Map<String, Object> getBusinessInfo(Long busiId, Integer busiType);

    Map<String, Object> getTradingsByConditions(Integer searchBy, String title, Integer orderType, Integer sellerType, Integer buyerType, Page page);

    Map<String, Object> getOrderComplaintsByConditions(Integer searchBy, String title, Integer busiType, Integer markCode, Integer orderType, Integer orderStatus, String startTime, String endTime, Page page);

    int handleComplaint(Long orderId, Long subOrderId, Long complaintId, Integer handleType, String amount, String complaintText);

    Map<String, Object> getAccountInfo(Long busiId);

    int refundDeposit(Long busiId, Integer busiType);
}
